#pragma once

#include "graphics/GrVector.h"
#include "SgComposite.h"

class CSgRotateAroundPoint : public CSgComposite
{
public:
	CSgRotateAroundPoint(void);
	~CSgRotateAroundPoint(void);
	
	CGrVector GetPoint() {return m_point;}
	double GetAngle() {return m_angle;}
	CGrVector GetNormal() {return m_normal;}

	void Render();

	void SetPoint(CGrVector vector) {m_point = vector;}
	void SetPoint(double x, double y, double z) {m_point = CGrVector(x, y, z);}
	void SetAngle(double angle) {m_angle = angle;}
	void SetNormal(CGrVector normal) {m_normal = normal;}
	void SetNormal(double x, double y, double z) {m_normal = CGrVector(x, y, z);}

private:
	CGrVector m_point;
	double m_angle;
	CGrVector m_normal;
};
